#include <stdio.h>

const int MaxNum=10000;

int formatInt(int value,int l)
{
    while(value<0)
    {
        value+=l;
    }
    return value;
}

int gcd(int a,int b){
    int c=0;
    if(a<b)
    {
        c=a;
        a=b;
        b=c;
    }
    
    c=a%b;
    while(c!=0)
    {
        a=b;
        b=c;
        c=a%b;
    }
    return b;
}

//扩展欧几里德算法  求出来x y 是方程 ax-by=gcd(a,b)的解
int exgcd(int a,int b,int &x,int &y)
{
	if(!b)
	{
		x=1;y=0;
		return a;
	}
	else
	{
		int tx,ty;
		int d=exgcd(b,a%b,tx,ty);
		x=ty;y=tx-(a/b)*ty;
		return d;
	}
}

int main(){
    int l,t,n;
    int i,j,k;
    int sum=0;
    int array[MaxNum][2];
    while(scanf("%d %d %d",&l,&t,&n)!=EOF)
    {
        if(l==0&&t==0&&n==0)
        {
            break;
        }

        for(i=0;i<n;i++)
        {
            scanf("%d %d",&array[i][0],&array[i][1]);
        }

        sum=0;
        for(i=0;i<n;i++)
        {
            for(j=i+1;j<n;j++)
            {
                //处理成正整数
                int s=((array[i][0]-array[j][0])%l+l)%l;
                int v=((array[j][1]-array[i][1])%l+l)%l;
                s=formatInt(s,l);
                v=formatInt(v,l);

                if(s==0)
                {
                    sum++;
                    printf("%d %d 0\n",i,j);
                    continue;
                }
                //相对速度为0 无解
                else if(v==0){
                    printf("%d %d no ans\n",i,j);
                    continue;
                }

                int x,y;
                //最大公约数
                int d=exgcd(v,l,x,y);
                //如果不能整除最大公约数 则无解
                if(s%d!=0)
                {
                    continue;
                }
                //求方程 vx≡s（mod l） v*x-l*y=s 最小的整数解 2x-8y=4
                else{
                    int mod=l/d;
                    int e = ((x * (s / d)) % l+l)%l;
                    //最小整数解
                    int minValue=e%mod;

                    printf("%d %d %d\n",i,j,minValue);

                    // for (k = 0; k < d; k++) // !!! here x maybe <0
                    // {
                    //     printf("%d-th ans: %d\n", k+1,(e+k*(l/d))%l);

                    // }

                    
                }
                

            }
        }
    }
    return 0;
}